// pages/staff/medical/detail.js
const medicalService = require('../../../services/medical');

Page({
  /**
   * 页面的初始数据
   */
  data: {
    id: null,            // 健康档案ID
    record: null,        // 健康档案数据
    isLoading: true,     // 是否正在加载
    error: null          // 错误信息
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log('健康档案详情页面加载, 参数:', options);
    
    if (!options.id) {
      this.setData({
        isLoading: false,
        error: '缺少健康档案ID'
      });
      return;
    }
    
    this.setData({
      id: options.id
    });
    
    this.loadMedicalRecord();
  },

  /**
   * 加载健康档案详情
   */
  loadMedicalRecord: function () {
    console.log('加载健康档案详情:', this.data.id);
    
    this.setData({
      isLoading: true,
      error: null
    });
    
    medicalService.getMedicalRecord(this.data.id)
      .then(res => {
        console.log('获取健康档案详情成功:', res);
        
        if (!res || !res.id) {
          this.setData({
            isLoading: false,
            error: '获取健康档案详情失败'
          });
          return;
        }
        
        this.setData({
          record: res,
          isLoading: false
        });
      })
      .catch(err => {
        console.error('获取健康档案详情失败:', err);
        this.setData({
          isLoading: false,
          error: err.message || '获取健康档案详情失败'
        });
      });
  },

  /**
   * 返回上一页
   */
  navigateBack: function () {
    wx.navigateBack();
  },

  /**
   * 编辑健康档案
   */
  editMedicalRecord: function () {
    wx.showToast({
      title: '暂不支持编辑',
      icon: 'none'
    });
  },

  /**
   * 下拉刷新
   */
  onPullDownRefresh: function () {
    if (this.data.id) {
      this.loadMedicalRecord();
      setTimeout(function () {
        wx.stopPullDownRefresh();
      }, 1000);
    } else {
      wx.stopPullDownRefresh();
    }
  },

  /**
   * 查看预约详情
   */
  viewAppointment: function () {
    if (!this.data.record || !this.data.record.appointmentId) {
      wx.showToast({
        title: '无关联预约信息',
        icon: 'none'
      });
      return;
    }
    
    wx.navigateTo({
      url: `/pages/staff/appointments/detail?id=${this.data.record.appointmentId}`
    });
  },

  /**
   * 查看宠物详情
   */
  viewPet: function () {
    if (!this.data.record || !this.data.record.petId) {
      wx.showToast({
        title: '无宠物信息',
        icon: 'none'
      });
      return;
    }
    
    wx.navigateTo({
      url: `/pages/pet/detail?id=${this.data.record.petId}`
    });
  },

  /**
   * 分享健康档案
   */
  onShareAppMessage: function () {
    if (this.data.record) {
      return {
        title: `${this.data.record.petName || '宠物'}的健康档案`,
        path: `/pages/medical/detail?id=${this.data.id}`,
        imageUrl: '/static/images/share-medical.png'
      };
    }
    return {
      title: '宠物健康档案',
      path: '/pages/index/index'
    };
  }
}); 